package hw401;

import java.util.Scanner;

public class TestDriver {

	public static void main(String[] args) {
		// 调用自方法
		test01();

	}
	/**
	 * 测试
	 */
	private static void test01() {
		//准备数据
		Scanner sc = new Scanner(System.in);
		System.out.println("请输入班级学生人数：");
		//学生人数
		int count =sc.nextInt();
		//根据学生人数创建数组
		Student[] arrStus =new Student[5];
		//添加数据（可以控制台输入）
		for(int i=0;i<count;i++) {
			//输入参数
			System.out.println("请输入第"+(i+1)+"个学生的姓名：");
			String strName =sc.next();
			System.out.println("请输入第"+(i+1)+"个学生的学号：");
			String strNum=sc.next();
			System.out.println("请输入第"+(i+1)+"个学生的成绩：");
			double fScore=sc.nextDouble();
			//根据输入的参数，构建一个学生对象实力
			Student stu = new Student(strName,strNum,fScore);
			//把创建的学生对象，放到学生数组
			arrStus[i]=stu;
		}
		
		//对学生数组进行排序
		bubbleSort(arrStus);
		//输出信息
		printArr(arrStus);
		
		
	
		
	}
	//排序
			/**
			 * 冒泡排序
			 * 
			 */
			public static void  bubbleSort(Student[] arr) {
				//外层for循环，轮数
				for(int i=0;i<arr.length;i++) {
					//内层for循环，完胜两两交换
					for(int j=0;j<arr.length-i-1;j++) {//j为交换次数
						//两两比较交换，排序：从大到小
						if(arr[j].getStuScore()<arr[j+1].getStuScore()) {
							//亮亮交换
							Student  temp =arr[j];
							arr[j]=arr[j+1];
							arr[j+1]=temp;
						}
					}
				}
				
				
				
			}
			//信息输出
			public static void printArr(Student[] arr1) {
				for(Student i :arr1) {
					i.printMe();
				}
				//换行
				System.out.println();
			}

}
